package ru.ak239.kozyatinskiy.lecture1;

/**
 * Пример демонстрирует использование цикла for
 *
 * @task 4.1 Допишите корректный javadoc для функции main
 */
public class PeopleMain2 {
    /**
     * main - с этой функции начинается исполнение кода класса виртуальное машиной
     * он обязательно должен быть открытым, т.е. public,
     * статическим, т.е. static
     * возвращать void
     * и принимать в качестве аргумента массив String[] args
     *
     * @param args
     */
    public static void main(String[] args) {
        /**
         * @task 4.2* для каких классов можно использовать foreach в Java?
         * @ansver 4.2 Тип парраметра str должен соответствовать типу параметра args.
         * Поддержка foreach является характеристикой всех объектов Collection.
         * В Java SE5 появился новый интерфейс Iterable, который содержит метод iterator() для создания Iterator
         * и именно интерфейс Iterable используется при переборе последовательности в
         * синтаксисе foreach. Следовательно, создав любой класс, реализующий Iterable,
         * вы сможете использовать его в синтаксисе foreach.
         * http://javainception.ru/index.php/kolekciiobjektov/kolekciiobjektov/sintaksis-foreach-i-iteratory.html
         */
        for (String str : args) {
            System.out.println("Hello World, " + str + "!");
        }
    }
}
